/*
 * 版权所有(C)，上海海鼎信息工程股份有限公司，lizhixing，所有权利保留。
 * <p>
 * 项目名：	boot-demo
 * 文件名：	UserListener
 * 模块说明：
 * 修改历史：
 * 2022/2/15 - lizhixing - 创建。
 */
package com.lovely602.boot.bootdemo.listener;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;

import com.lovely602.boot.bootdemo.service.UserService;

/**
 * @author lizhixing
 */
@WebListener
public class UserListener implements ServletContextListener {

  public static final String LISTENER_NAME = "userListener";

  @Autowired
  private RedisTemplate redisTemplate;
  @Autowired
  private UserService userService;

  private static final String ALL_USER = "allUserList";

  @Override
  public void contextInitialized(ServletContextEvent sce) {

    // 查询数据库所有用户
    // List<User> users = userService.findAll();
    // // 清楚缓存中的数据
    // redisTemplate.delete(ALL_USER);
    // // 将数据放到redis缓存中
    // redisTemplate.opsForList().leftPushAll(ALL_USER, users);
    // // 查询缓存中的所有用户并打印出来
    // List<User> userList = redisTemplate.opsForList().range(ALL_USER, 0, -1);
    // System.out.println("缓存中目前的用户数有：" + userList.size());
    System.out.println("userListener servletContext上下文初始化");
  }

  @Override
  public void contextDestroyed(ServletContextEvent sce) {
    System.out.println("userListener servletContext上下文销毁");
  }
}
